Query and information meter for query session

ABSTRACT

A computer implemented method, system, and device include providing a series of queries to a user via a client query device, sending queries from the series of queries via the client query device to an information source client, receiving information from an information source via the information source client, determining a proportion of queries to information, and generating a query communication as a function of the proportion of queries to information.

BACKGROUND

Querying to obtain information can be quite challenging. Many queriesgenerated may be closed ended, eliciting a short answer, when furtherinformation regarding the subject or subjects of the queries may bedesired. Such inadequate queries can lead to extended query sessions andless information collected than desired.

SUMMARY

A computer implemented method, system, and device include providing aseries of queries to a user via a client query device, sending queriesfrom the series of queries via the client query device to an informationsource client, receiving information from an information source via theinformation source client, determining a proportion of queries toinformation, and generating a query communication as a function of theproportion of queries to information.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block flow diagram of a system for querying an informationsource according to an example embodiment.

FIG. 2 is a flowchart illustrating a method 200 of determininginformation exchange proportions

FIG. 3 is a table illustrating a spectrum of new communications during aconversation according to an example embodiment.

FIG. 4A is an example representation of a conversation conducted usingthe system according to an example embodiment.

FIG. 4B is a further example representation of a conversation conductedusing the system according to an example embodiment.

FIG. 5 is a block diagram of a system for generating query suggestionsaccording to an example embodiment.

FIG. 6 is a screen shot of an example a user interface showing an intentpage used for training a vivid conversation model according to anexample embodiment.

FIG. 7 is a screen shot of an example interface illustrating sentencesused to train the vivid conversation model for closed ended questions ina token view according to an example embodiment.

FIG. 8 is a screen shot of an example interface illustrating sampleutterances for determining a leading question intent according to anexample embodiment.

FIG. 9 is a screen shot of an example interface illustrating sampleutterances for determining a leading question intent with example tokensaccording to an example embodiment.

FIG. 10 is a list of example phrases to leverage understanding ofgrammar according to an example embodiment.

FIG. 11 is a screen shot example interface for editing phrase listsaccording to an example embodiment.

FIG. 12 is a list of intents on which the vivid conversation model hasbeen trained according to an example embodiment.

FIG. 13 is a list of normalized values and synonyms making up a vividgrammar list according to an example embodiment.

FIG. 14 illustrates types of entities defined in a vivid conversationmodel in one embodiment related to a product development domainaccording to an example embodiment.

FIG. 15 is a screen shot illustrating an example (jobs to be done)JTBD_Action entity according to an example embodiment.

FIG. 16 is a screen shot illustrating the JTBD_Action entity withexample tokens filled in for the entities according to an exampleembodiment.

FIG. 17 is a block diagram of a system for generating query suggestionsillustrating additional components compared to FIG. 5 according to anexample embodiment.

FIG. 18 is a block schematic diagram of a computer system to implementone or more example embodiments.

DETAILED DESCRIPTION

In the following description, reference is made to the accompanyingdrawings that form a part hereof, and in which is shown by way ofillustration specific embodiments which may be practiced. Theseembodiments are described in sufficient detail to enable those skilledin the art to practice the invention, and it is to be understood thatother embodiments may be utilized and that structural, logical andelectrical changes may be made without departing from the scope of thepresent invention. The following description of example embodiments is,therefore, not to be taken in a limited sense, and the scope of thepresent invention is defined by the appended claims.

The functions or algorithms described herein may be implemented insoftware in one embodiment. The software may consist of computerexecutable instructions stored on computer readable media or computerreadable storage device such as one or more non-transitory memories orother type of hardware-based storage devices, either local or networked.Further, such functions correspond to modules, which may be software,hardware, firmware or any combination thereof. Multiple functions may beperformed in one or more modules as desired, and the embodimentsdescribed are merely examples. The software may be executed on a digitalsignal processor, ASIC, microprocessor, or other type of processoroperating on a computer system, such as a personal computer, server orother computer system, turning such computer system into a specificallyprogrammed machine.

The functionality can be configured to perform an operation using, forinstance, software, hardware, firmware, or the like. For example, thephrase “configured to” can refer to a logic circuit structure of ahardware element that is to implement the associated functionality. Thephrase “configured to” can also refer to a logic circuit structure of ahardware element that is to implement the coding design of associatedfunctionality of firmware or software. The term “module” refers to astructural element that can be implemented using any suitable hardware(e.g., a processor, among others), software (e.g., an application, amongothers), firmware, or any combination of hardware, software, andfirmware. The term, “logic” encompasses any functionality for performinga task. For instance, each operation illustrated in the flowchartscorresponds to logic for performing that operation. An operation can beperformed using, software, hardware, firmware, or the like. The terms,“component,” “system” and the like may refer to computer-relatedentities, hardware, and software in execution, firmware, or combinationthereof. A component may be a process running on a processor, an object,an executable, a program, a function, a subroutine, a computer, or acombination of software and hardware. The term. “processor,” may referto a hardware component, such as a processing unit of a computer system.

Furthermore, the claimed subject matter may be implemented as a method,apparatus, or article of manufacture using standard programming andengineering techniques to produce software, firmware, hardware, or anycombination thereof to control a computing device to implement thedisclosed subject matter. The term, “article of manufacture,” as usedherein is intended to encompass a computer program accessible from anycomputer-readable storage device or media. Computer-readable storagemedia can include, but are not limited to, magnetic storage devices,e.g., hard disk, floppy disk, magnetic strips, optical disk, compactdisk (CD), digital versatile disk (DVD), smart cards, flash memorydevices, among others. In contrast, computer-readable media, i.e., notstorage media, may additionally include communication media such astransmission media for wireless signals and the like.

Querying to obtain information can be quite challenging. Many queriesgenerated may be closed ended, eliciting a short answer, when furtherinformation regarding the subject or subjects of the queries may bedesired. Such inadequate queries can lead to extended query sessions andless information collected than desired.

When querying people, queries may lack empathy, further eliciting shortresponses. Empathy may be thought of as the capacity to understand orfeel what another person is experiencing from within their frame ofreference, i.e., the capacity to place oneself in another's position.There are many definitions for empathy that encompass a broad range ofemotional states. Types of empathy include cognitive empathy, emotionalempathy, and somatic empathy.

It is easy for a person generating the queries to ask closed endedquestions as opposed to open ended questions. Open ended questionsgenerally elicit longer answers that include more information than amere yes or no answer. With open ended questions, the person usuallyshares more information and feels like they have been given anopportunity to be heard. Thus, the goal of a user querying a person isto ensure that the queries exhibit empathy to make the person feel morewilling to share more information.

While a well-trained interviewer may be good at generating queries thatexhibit some form of empathy, the vast majority of people tasked withconducting interviews lack sufficient skills to generate queries thatelicit complete responses that provide representative data orinformation suitable for making decisions. Representative data isinformation that is accurate and representative of a purpose of thequerying. Without representative data, the data collected may misdirectdecisions related to the purpose of the querying.

Queries generated during conversations may have some form of implicitbias, which can further hamper collection of full information from aperson. Other problems with queries may include violation of privacypolicies or a proportion of the number of queries to information providein response to queries may be non-optimal for the information to becollected.

Research informs that “representative” data, is not enough to movepeople to action. One must appeal to the head and heart. Such appealsmay be based on the context and circumstances of the conversation andmay include story telling. These appeals prove to be inspirational inthat they are more like to generate action. To effectively power acustomer-driven culture/process one must complement “representative”data with data that is “relatable”. Vivid interviews are a uniqueinstrument to help foster the collection and dissemination of bothrepresentative data and relatable data. A vivid interview approachcombines an interview grammar along with a domain specific grammar.

There are patterns that attribute to an empathy gap in conversations.Some common themes during conversations include the challenge of takingnotes, identifying opportunities to probe deeper, the use of leading,biased, and closed ended questions, and difficulty in sharing empathy.

Having an engaging conversation with a customer and documentingeverything that was said is incredibly difficult. Even when they partnerup with a note taker, key insights are missed. Some have taken torecording their conversations, however, many rarely go back andtranscribe their conversations. A review of notes of many conversationscollected over time demonstrate missed opportunities for interviewers toprobe for deeper insights.

While coaching, training, and mentoring people to have greatconversations with customers and maximize the value of the data they'recollecting, there are still times when they unknowingly fall back on“bad habits” that may exhibit bias, leading questions, and closed endedquestions.

A common challenge for many leaders is that they feel like they havemeaningful insights, but struggle to raise “above the noise” and get theattention of others. Many sharing channels like email and letters feel“uninspired” or like “data dumps” that don't compel anyone to action.

While giving teams of interviewers or users education before going intocustomer interviews is useful, more tools are needed given thechallenges described above. Having vivid stories, that move anorganization to inspired action, having vivid conversations to beginwith can be a powerful tool.

The use of vivid interviews ensures that users capture crucial elementsof a vivid customer story. An example of capturing a vivid interview inthe context of a development team interviewing customers to help indeveloping products, such as software and/or hardware products, may bebased on an interview grammar combined with a domain-specific grammar.Products may also include services. The interview grammar is comprisedof six categorical element or questions:

Who/What?: Attributes that capture the customer's context

How many?: Details that uncover quantity or scale

Where?: Where was, or will the customer be, when the events occur.

When?: When in time did events occur.

How?: Insights about complex interactions and workflows.

Why?: Summaries that help bring the entire story together

In various embodiments of the present inventive subject matter, thevivid grammar may be used to identify queries that may lack an empathycomponent. The vivid grammar may include components of queries that arebased on who/what, how many, where, when, how, and why aspects that maybe used to elicit a rich vivid conversation in many different scenarios,such as in the context of a development team interviewing customers. Thevivid grammar is designed to elicit better content from people beingqueried.

Examples of queries being modified based on the vivid grammar mayinclude changing a query from “Do you debug your apps” with “how do youdebug your apps”, “how often do you debug your apps”, “when was the lasttime you debugged your apps”, tell me about the worst time you haddebugging your apps.” These questions are more open ended and tend toelicit more information that closed ended questions. In addition, theyencourage the person to share stories, which inherently have emotionalcomponents, giving the person a better feeling that the personpresenting the queries is empathizing.

An example of a domain-specific grammar corresponding to the productdevelopment domain can be used by introducing our domain grammar forproduct development:

Customer: Details about the customer's context, motivation and tasksthey perform.

Problem: Insights into the problems or frustrations the customer isexperiencing.

Concept: Statements of whether a conceptual idea solves a problem and isvaluable to the customer.

Feature: Indicators that a problem is being solved by a proposed featureand whether the customer finds the solution satisfactory.

Business: Details that indicate how the concept or feature can be bestpositioned to achieve business goals.

In one embodiment, the domain specific grammar may be combined with thevivid grammar to tailor the vivid grammar to a particular domain, suchas in the context of the development team. Each domain may have aspecific grammar that may or may not share elements of the productdevelopment domain grammar. For instance, development of products has agrammar corresponding to how product development evolves. Other domainspecific grammars may be used to combine with the vivid grammar forother scenarios, such as healthcare, customer support, and others. Thecombination of these grammars creates a vivid interview that elicits arich and vivid query session, such as a conversation between adevelopment team member and a customer.

In one embodiment, the development team domain specific grammar may beselected to mirror various stages of product development, identifyingcustomers, their problems, concepts thought of by developers to addressthe problems, turning the concept into a feature, and then making abusiness decision regarding the feature. A healthcare domain specificgrammar for example may include patients, symptoms, diagnosis,treatment, and effect of the treatment. Other domain specific grammarsmay be easily developed for other scenarios by deriving stages andfundamental questions based on existing processes or new processes.

Bias entering a dialog between and interviewer and an interviewee, fromeither side of the conversation, can misdirect the conversation and ifunchecked the understanding derived from that conversation. Whenpotential bias is detected the interviewer can reduce the influence ofthe bias on the conversation and in turn the derived understanding byapplying a vivid grammar to the ensuing conversation.

An example of speech-based intent detection services and vivid grammarapplication in the context of reducing interviewer bias may be based on:

Curse of knowledge: When better-informed people find it extremelydifficult to think about problems from the perspective oflesser-informed people.

Examples of queries that reduce bias may include: detecting the use ofan acronym (e.g., (CI/CD) and prompting the interviewer to fullyarticulate the phrase behind the acronym (e.g., continuous integrationand deployment): detecting the use of a proper noun or subject that hasnot previously been introduced and prompting the interviewer to ensurethe interviewee has working understanding of said subject.

Empathy gap: The tendency to underestimate the influence or strength offeelings in yourself or in others

Examples of queries that reduce bias may include detecting wheninterviewee articulates a problem or expresses an emotion and prompt“how much of a problem” and/or “how strong of an emotional reaction”

Focusing effect: The tendency to place too much importance on one aspectof an event.

Examples of queries that reduce bias may include, for each unique topicof conversation, prompting for a more vivid recounting of an event suchas the broader flow/“how”, “who else” was involved, “when” was thelast/worst/typical occurrence.

Wishful thinking: predicting that positive outcomes are more likely thannegative outcomes, a pattern common in story sharing.

Examples of queries that reduce bias may include periodically promptingthe interviewer to remind the interviewee that the purpose of theinterview is to learn not confirm and by emphasizing the value ofconstructive feedback. In the context of product development this isparticularly important for concept, feature, and business model topicsof conversation.

Expectation bias: The tendency to believe data that agree withexpectations and to disbelieve, discard, or downgrade data that appearto conflict with expectations.

Examples of queries that reduce bias may include leveraging cognitiveservices such as sentiment analysis to highlight direction and strengthof interviewee affect. An example of speech-based intent detectionservices and vivid grammar application in the context of reducinginterviewee bias may be based on:

Confirmation bias: The tendency to search for, interpret, focus on andremember information in a way that confirms preconceptions

Examples of queries that reduce bias following potentially biasedinterviewee responses may include detecting when a stated behavior oremotional reaction has not been associated with a specific point in timeand subsequently applying vivid grammar prompts such as “when did thislast occur” and “how did it take place” to focus the conversation onrecalled events rather than potentially biased generalizations.

Peak-end rule: An experience is perceived not as the sum of its partsbut as some combination of how it was at its peak (e.g. pleasant orunpleasant) and how it ended.

Examples of queries that reduce bias following potentially biasedinterviewee responses may include detecting when a conclusion orreaction may be based on a single point in time versus a reoccurringpattern and subsequently applying vivid probing such as “when was thelast time this occurred”. “how often does this occur”, and “what is atypical occurrence like” to focus the conversation on typicaloccurrences, and last occurrences rather than peak only.

Halo effect: The tendency for positive or negative traits to “spillover”from one area to another

Examples of queries that reduce bias following potentially biasedinterviewee responses may include detecting when a conclusion orreaction based on one area of conversation may be influencing theconversation surrounding a different area of conversation andsubsequently applying vivid probing such as “when was the last time thisoccurred”. “how often does this occur”, and “what is a typicaloccurrence like” to focus the conversation on typical occurrencesrelating to the new area of conversation.

Bandwagon effect: The tendency to do (or believe) things because manyother people do (or believe) the same

Examples of queries that reduce bias following potentially biasedinterviewee responses may include detecting when a conclusion orreaction based on the opinions of others rather than personal experiencemay be influencing the conversation and subsequently applying vividprobing such as “when was the last time this occurred”, “how often doesthis occur”, and “what is a typical occurrence like” to focus theconversation on personal experience relating to the subject ofconversation.

Expectation bias: The tendency to believe data that agree withexpectations and to disbelieve, discard, or downgrade data that appearto conflict with expectations

Examples of queries that reduce bias following potentially biasedinterviewee responses may include detecting when a conclusion orreaction may be based on prior expectations versus specific events andsubsequently applying vivid probing such as “when was the last time thisoccurred”, “how often does this occur”, and “what is a typicaloccurrence like” to focus the conversation on typical occurrences, andlast occurrences rather than peak only.

Wishful thinking: Predicting that positive outcomes are more likely thannegative outcomes, a pattern common in story sharing

Examples of queries that reduce bias may include periodically promptingthe interviewer to remind the interviewee that the purpose of theinterview is to learn not confirm and by emphasizing the value ofconstructive feedback. In the context of product development this isparticularly important for concept, feature, and business model topicsof conversation.

Well-trained interviewers integrate additional signals beyond just theindividual spoken responses of the interviewee, in real-time, to developa deeper and more accurate understanding of interviewee opinions,emotions, and behaviors and to direct follow up questioning accordingly.These signals may include: body language: voice inflection;bio-feedback; analysis of sentiment expressed and sentiment changesacross the overall flow of the conversation.

The real-time integration of these signals allows the interviewer todetect convergence and divergence across the different signals. Whensignals converge the interviewer has greater confidence in the line ofinquiry and resulting understanding and can follow up accordingly. Whensignals diverge it implies some degree of dissonance on the part of theinterviewee. The interviewer can use the apparent dissonance to directfollow up questions or redirect the conversation to a different line ofinquiry to better understand the apparent dissonance and underlying useremotions, opinions, and behaviors.

FIG. 1 is a block flow diagram of a system 100 illustrating componentsinvolved in querying an information source for information. A queryclient 110, such as a computer executing code is coupled to a querycapture device 115. Query capture device 115 may include a microphonefor use by a user in creating a series of queries to obtain informationfrom a participant during a conversation. The queries may also includeother information, such as information describing a product or service,or any other information desired to be communicated during aconversation with the participant. The queries may be read from aprepared script or ad-libbed by the user in order to obtain information.

The queries are communicated to an information source client 120, suchas via voice over IP (VOIP), telephone, wireless, or other connection.Information source client 120 may be coupled to an information capturedevice 125 for use by a participant being queried. Both client orcapture devices may include speakers to ensure the queries andinformation may be heard by the participant and user.

In one embodiment, the query and information comprises audio informationwhich may be transcribed into text. The transcription may be performedby one or more clients, such as query client 110, or performed by aservice coupled to receive the audio information. The text may be in anyselected language, such as the language of the query or information, ora desired translation of the query or information language.

The transcribed text may include information identifying the source ofthe text, such as originating from the user of query client 110,corresponding to queries, and the user using information source client120, corresponding to information provided by the participant inresponse to the queries. The transcribed text is provided to a query andinformation measurement function 130 for measuring the relative amountsof communication by the user and the participant being queried.Measurements may take the form of the number of characters of each, thenumber of words of each, or even the time associated with each of thequeries and information provided. The measurements may be done byaggregating the relative times in one embodiment.

The measurements are provided to a proportion generator 135. Theproportion generator 135 uses the measurements to determine aconversation mix value, which is a proportion of the amount ofcommunications by the user to the amount of communications by theparticipant providing information responsive to the queries. Acommunication generator 140 generates a new communication, such as anindication regarding the conversation mix value, a suggestion for a newquery, or even a new query to submit in the conversation as a functionof the proportion of queries to information.

The new communication may be provided back to the query client,presented to the user, and may be used by the user to cause a new queryor other communication to be sent from the client query device to theinformation source client.

In one embodiment, the new communication is generated responsive to theconversation mix value exceeding a threshold, or multiple thresholds.The proportion generator 135 compares the conversation mix value to athreshold. The threshold may be selected as a function of a type of theseries of queries. The threshold may be higher for a first type ofseries of queries directed toward eliciting fact-based information andlower for a second type of series of queries directed toward elicitingopinion-based information. Note that the threshold in furtherembodiments may be the inverse of the threshold described above, withselections adjusted accordingly.

The communication may be selected by the communication generator 140from a group of queries of varying open and closed ended type of queriessuch that when the proportion is greater than the threshold results inselection of an open ended new query. In one embodiment, thecommunication generator 140 may be in the form of a whisper bot, anintelligent device that generates new communications and sends the newcommunications to the user for use in querying for information. The term“whisper bot” is coined to describe a construct that essentiallywhispers suggestions for queries or provides new queries and/orinformation relevant to a user conducting a more robust conversation toobtain better information responsive to queries.

FIG. 2 is a flowchart illustrating a method 200 of determininginformation exchange proportions, a conversation mix value, between aquery generator and a data source being queried. At operation 210, aseries of queries may be provided to an information source, such as auser via a client query device. The queries maybe read by a person by ascript or a programmed bot in various embodiments. The programmed botmay be a software agent, assistant, module, or other program that canrun automated tasks, and may include machine learning or artificialintelligence programming. In other scenarios, the person reading thequeries may have a general idea of information to obtain from the user,or a list of information. The person may then generate the queries basedon such a list.

The queries may be serially sent at operation 220 via a communicationconnection, such as a voice, video, or text-based connection via theclient query device to an information source client which a user may beusing. Information from the information source client may be received atoperation 230. At operation 240, the queries and information maybetranscribed into query text and information text. A proportion ofqueries to information, the conversation mix value, is determined atoperation 250 from the transcribed queries and information. At operation160, a new communication, such as a query suggestion, new query, or arepresentation of the conversation mix value, is generated as a functionof the proportion of queries to information. The new communication maybe sent at operation 170 from the client query device to the informationsource client.

In one embodiment, the proportion of queries to information may be basedon a count of the query text and information text. The count may bebased on the number of letters in the query text and information text oron the number of words in the query text and information text.

In a further embodiment the proportion of queries to information isbased on a first aggregation of time for a user to read the queries anda second aggregation of time for the information source comprising aninterviewed user of the information source client to provide theinformation. The conversation mix value may be provided by a service,such as a transcription service provides transcriptions of theconversation. The conversation mix may alternatively be provided by aspeaker identification service that recognizes speakers from audiosignals or connection identifications and monitors relative times ofeach speaker talking. The speaker identification service may be part ofor separate from the transcription service.

The new communication may be generated responsive to the proportion ofqueries to information exceeding a threshold. The threshold may beselected as a function of a type of the series of queries. The thresholdmay be higher for a first type of series of queries directed towardeliciting fact-based information and lower for a second type of seriesof queries directed toward eliciting opinion based information. The newquery may be selected from a group of queries of varying open and closedended type of queries such that when the proportion is greater than thethreshold, an open-ended query may be selected as the new query.

FIG. 3 is a table 300 illustrating a spectrum of new communicationsduring a conversation. In one example, a next question in the script orlist of information to be obtained during the conversation may berelated to debugging apps as referenced above. In a further example, thenext question may relate to describing the number of times per day thata service is being used. A closed ended question, communication 310 maybe “Do you use the service every day?” Communication 320 is slightlymore open-ended question: “How many times do you use the service perday?” Communication 330 may be “Why do you use the service and how ofteneach day?” Several variations of questions utilizing a vivid interviewmay be included in table 300.

Based on the threshold, or multiple thresholds, one of thecommunications from table 300 may be selected. For instance, if thethreshold is indicative of the user talking more than desired, a moreopen-ended question may be selected. In one embodiment, each question intable 300 may have an associated threshold as indicated at 315, 325, and335. In further embodiments, the questions 310, 320, and 330 may berepresentations a level of vividness desired in a next question to begenerated by query generator 140, as opposed to an actual question.

In one embodiment, the communications may be in the form of queries,suggestions for queries, an indication of the conversation mix value, anindication of a time remaining for the conversation, a suggestion tochange from providing information to querying for information, or othercommunications to help elicit desired information.

FIG. 4A is an example representation 400 of a conversation conductedusing system 100. A user—interviewer, Travis at 410 is querying acustomer or participant 415 via a voice connection. The representation400 may be provided to the user 410 for use in generating queries asshown under the user 410 and responses or information provided shownunder the participant 415. A timer 420 may be included as shown, orplaced elsewhere on the representation. The timer 420 may provide anindication of the time spent in the conversation, a time remaining inthe conversation, or a time related to a particular topic during theconversation in various embodiments.

In addition or alternatively, a graphical representation of time orquantity of communications, such as a conversation mix bar 425 is shown.In one embodiment, the queries and portion of the conversation mix bar425 attributable to the user may be shown in a first attribute, such asgreen at portion 426, with the responses or information is shown in asecond attribute, such as red at portion 427. The conversation mix bar425 is a graphical representation of the proportion of queries toinformation described above. The conversational mix bar 425 may be oneform of a new communication and may be given an attribute, such asblinking, to communicate to the user that the conversation mix needsattention.

Communications generated by the user 410 are shown in chronologicalorder at 430 (Hi Jessica thanks for joining us today), 434 (So welearned you recently started learning to code, and we wanted to talk toyou about your experiences today.), 438 (Can you tell me why you wantedto learn to code?), and 440 (Oh that's cool was it easy for you to learnto code). Responses by participant 415 are shown at 444 (Hey Travisthanks for having me), 448 (Okay, no problem). 452 (I have a lot of datato analyze it work, and it's time consuming. So I thought it might befun to build an app for that.), and 456 (I guess). Note that most of thetalking so far has been done by user 410, as indicated by portion 426 ofthe conversation mix bar 425 being larger than portion 427.

Note that question 440 (Oh that's cool was it easy for you to learn tocode) was closed ended, inviting a short response, such as a yes, or no,or the received response 456 (I guess). At this point in theconversation, the communication generator 140 may note the proportion ofconversation, as well as the closed ended query, and determine that itis time for a suggestion of a more open-ended query as the next query.The suggestion is shown at 460 (This is a leading question, Rephrase as:“How do you feel”). The suggestion in this case is simply a suggestionregarding how to rephrase the previous question, encouraging the user toask a next question incorporating the suggestion with the previousquestion, such as “How do you feel about learning to code”. In furtherembodiments, the suggestion could be the entire question rephrased.

In some embodiments, the suggestion may be obtained from a table, suchas table 300 based on the conversation proportion or simply triggered bythe use of a closed ended question. In further embodiments, thesuggestion may be generated by a trained bot as described in furtherdetail below.

In some embodiments, the conversation mix threshold may be changedduring a conversation. For example, a user may be describing a newproduct or providing a tutorial about a new feature in a product duringa first part of a conversation. The user is expected to talk more thanthe participant during such first part of the conversation. Theconversation mix threshold may be set to a value reflective of thatexpectation during the first part of the conversation. A second part ofthe conversation may involve asking users about the new feature, if itsolves some problems, if there were problems encountered during usingthe new feature, etc. This second part of the conversation should have aconversation mix that is slanted toward the participant, as a goal is toelicit representative and relatable data.

FIG. 4B is an example representation 465 of a conversation conductedusing system 100. The conversation is illustrated as between aninterviewer 467 and a customer 468. A time remaining indicator is shownat 470 and is representative of the time remaining following all theshown interview statements. A discussion guide 475 lists questions to beasked during the interview. The discussion guide 475 acts as a burndownlist in one embodiment for use in determining if all planned questionshave been dealt with in a limited time conversation. Checkmarks 476indicate questions already asked. The query and information measurementfunction 130 compares the text from the conversation to the questionsand determines which questions have already been addressed during theconversation. Two of the five questions are illustrated as having beenaddressed.

In one embodiment, two different types of burndown lists may be used. Afirst, question coverage burndown list tracks coverage metrics for anyquestion that the interviewer pre-loaded into the communicationgenerator 140, also referred to as a “whisper-bot” prior to theinterview in the form of a discussion guide. A second interview coverageburndown list, such as burndown list 475 tracks coverage metrics for howmuch of the total set of query suggestions coming in real-time from thebot that the interviewer follow up on. The first, question coverageburndown list allows the communication generator to dynamically monitorcoverage of a topic set expressed as an intent to cover before theinterview started. Coverage metrics may be provided by the query andinformation measurement function 130 by matching syntax of thediscussion guide topics and the queries posted by the interviewer 467.

Based on the monitoring of coverage, the communication generatorprovides the interviewer 467 the ability to open a detailed view,discussion guide 475, of the questions they intended to cover but havenot yet covered during the interview. The second interview coverageburndown list 475 allows for the fact that as the interview progressesin real-time the interviewer 467 may not be able to follow up on allwhisper-bot suggestions as they occur. As the conversation progressesthe advice will quickly get pushed out of the visible conversationrecord. The burndown feature allows the interviewer to go back at anytime in the discussion guide view and see a complete record of botsuggestions that they did not interject into the interview. In oneembodiment, the suggestions may be correlated to and listed with eachquestion in the burndown list 475.

The conversation is divided between the interviewer 467 in a firstcolumn and the customer 468 in a second column. The text for bothcolumns is somewhat random and not representative of an actualconversation. The conversation is now described in sequential order. Afirst question 477 results in a response 480. The response is processedby query and information measurement function 130 and is noted as havinga positive sentiment at 481 by query and information measurementfunction 130. Query and information measurement function 130 notes atthis point in the conversation that only two of the five questions havebeen addressed, and that there are five minutes remaining for thescheduled conversation. Communication generator 140 generates asuggestion 482, informing the interviewer 467 of that fact, andencouraging asking of the last three questions.

A further question 486 is then communicated, resulting in a response488, that is found positive at 489 by the query and informationmeasurement function 130. At 490, the query and information measurementfunction 130 determines that responses have been mostly positive to dateand prompts the communication generator 140 to suggest to the user at490 of that fact, and prompts the user to consider asking a questionabout pain or frustration. The positive and negative sentiments may bethought of as a second burndown list, that deals more with emotions ofthe customer as opposed to fact-based data.

In one embodiment, a conversation score 492 is maintained on a scalefrom 0 to 100 (best) in one embodiment. Other scales may be used infurther embodiments. The query and information measurement function 130may be used to determine the conversation score, which may be based onthe vivid grammar. The more a conversation utilizes the vivid grammarthe better. The score may be determined as an average of a vivid grammarconfidence level in one embodiment.

FIG. 5 is a block diagram of a system 500 for generating querysuggestions. A query client 510, such as a computer executing code iscoupled to a query capture device 515. Query capture device 515 mayinclude a microphone for use by a user in creating a series of queriesto obtain information from a participant. The queries may be read from aprepared script or ad-libbed by the user in order to obtain information.

The queries are communicated to an information source client 520, suchas via voice over IP (VOIP), telephone, wireless, or other connection.Information source client 520 may be coupled to an information capturedevice 525 for use by a participant being queried. Both client orcapture devices may include speakers to ensure the queries andinformation may be heard by the participant and user.

In one embodiment, the query and information comprise audio informationwhich may be transcribed into text. Audio information from clients 510and 515 may be provided via respective connections 530 and 532 totranscription services 535. Transcription services in one embodiment mayinclude a commercially available service that may include speech to textservices 537, custom speech service 539, and punctuation and grammarservice 541. In one embodiment, transcription service 535 comprisesnetwork-based service that may be coupled directly to the respectiveclients and provide transcribed text via a connection 543 to client 510via connection 545 and to client 520 via connection 544 to allow theuser and participant to view the text of their conversation during theirconversation. Transcriptions may alternatively be performed by the oneor more clients 510 and 515.

The transcribed text may be in any desired language, and includeinformation identifying the source of the text, such as originating fromthe user of query client 510, corresponding to queries, and the userusing information source client 520, corresponding to informationprovided by the participant in response to the queries. The transcribedtext is also provided via connection 551 to a grammar extraction layer555 and via connection 556 to text analysis services 560. Text analysisservice 560 may include a trained LUIS model 562 and text analyticsservices 564. LUIS is a commercially available machine learning-basedservice in Microsoft Azure that may be used to build natural languageunderstanding into apps, bots and internet of things devices. LUISmodels may customized for a problem to be solved, and continuouslyimprove with usage and training. Other such services may be used togenerate model 562 in further embodiments. Model 562 maybe trained toidentify closed and leading questions, as well as questions that mayreflect bias in some embodiments. Model 562 may also be modified basedon the grammar for each different scenario or domain.

In one embodiment, model 562 may be trained using intents, entities, andphrase lists. Intents identify what LUIS should do, such as, identifyclosed questions. Entities are the individual types of words in asentence, such as nouns, verbs, adverbs, etc. A phrase list may beactual queries or utterances, such as questions or statements madeduring conversations.

The output of model 562 may be provided via connection 565 to thegrammar extraction layer 555 as a probability that the question isclosed or leading. The probability may be used by a web servicescomponent 576, or whisper bot, to determine whether or not to make asuggestion. If the decision is to make a suggestion, the suggestion maybe obtained from a communication generator 570, which may be in the formof a table of suggestions based on the probability and text analysisprovided by text analytics service 564. In further embodiments,communication generator 570 may be a trained bot that generatessuggestions as a function of training that includes many differentlabeled examples of output from the services 560. The suggestion, alongwith the analysis from services 560 may be provided via connection 572to client 510 for display as a new communication.

Thus, after receiving information from LUIS (and the like) about whatthe probability is in terms of what the interviewee is talking about,there can additionally be a ‘dialog management’ bot such ascommunication generator 570 that then ingests logic about how to holdthe conversation in such a way that it feels natural to both of thehumans involved (both the interviewer, in terms of the suggestions theyare getting to help improve their interview—and to the interviewee, interms of the follow-up questions being suggested, for example).

The communication generator 570, also referred to as a dialog managementbot finds out what the most reasonable and natural thing is to say inresponse to the user. Some example responses include; a directsuggestion for a follow-up question when the situation is clear, aquestion to elicit more information to make a more informed decision (inthis situation, the dialog management bot asks for ‘slot filling’information—for example, if there is a JTBD action without a directobject, it might ask the interviewer to ask the customer what it is theyare debugging), stating that it does not understand what the user said,prioritizing potential response suggestions taking into account whichfollow-up questions had already been asked, and which questions wouldlead to the more vivid description, asking a question to double-checkthat both the interviewer and the bot understood what the intervieweesaid (the term for when the bot checks its own conclusions is‘grounding’), etc. The dialog management bot can even take the burndownlist and conversation mix timestamp, to decide whether to help theinterviewer move on to a different topic (e.g., to address more of thetopic in the burndown) or to stick with the same topic (e.g., to askcertain questions that would provide them with a vivid story to tellpost-interview).

In one embodiment, one or more web or network-based services may be usedby the dialog management bot to manage conversation flow andcommunication suggestion generation. Microsoft Azure may be used tomanage conversation flow with dialogs in one embodiment. Other exampleservices include AnA maker, LUIS and scorables, and/or ProjectPersonality Chat. The combination of these services and others allowfollow-up questions, or suggestion for additional queries that aresuggested to flow naturally in a current conversation.

In one example conversation, a customer may mention something abouthaving a problem with debugging. The our LUIS trained model 562 detectsthat the customer mentioned a pain point: problem. Model 562 will alsodetect a “Job-to-be-done action”: debugging.

Ideally, the dialog management bot 570 will be provided this informationby model 562 and will start by realizing that there's informationmissing: a Job-to-be-done action, but no direct object. The bot 570 willgenerate a communication to first ask, “What are you debugging when yourun into problems?” The customer would then provide the direct object,e.g., “I run into trouble when I debug Python code using Visual StudioCode.”

Another (more common) type of feedback bot 570 provides would be aboutwhich follow-up response to provide after an intent has been detected byLUIS. So in the example above, LUIS will detect that the customer hasbrought up a problem with the task “debug Python using VS Code”.

These are example follow-up questions for a problem statement:

Grammar Question Who/What What problems or challenges do you faceWho/What Do you experience this particular problem Who/What Whatproducts, services, or technologies do you use to help with this problemWho/What What, if any custom workarounds have you tried Who/What Whoelse experiences this problem When When was the last time you had thisproblem When When was the worst time this problem occurred When Whenduring you workday/week/month does it typically happen Where Where wereyou when it last occurred Where Where are you when this problemtypically occurs How How does this problem typically occur How Whathappens before it occurs How What happens after it occurs How Much Howoften does the problem occur How Much How much time do you spend on itHow Much How problematic is it How Much What is your biggest pain pointor frustration relating to this problem How Much How painful orfrustrating is it How Much How well is your current approach to dealingwith this problem working How Much How satisfied are you with yourapproach Why What motivates you to want to find a better solution tothis problem Why If you don't do better at addressing this problem whatwill you lose Why If you find a better solution to this problem whatwill you gain

This grammar may be provided as a list accessible via lookup based onthe input from model 562, or may be classifications of a machinelearning service trained to recognize various intents.

Based on what information has already been collected about this problemand/or job-to-be-done, the bot 572 would not suggest those questionsagain. In one embodiment, bot 572 might start with the followingquestion: “How does this problem typically occur?”, and add: “How oftendoes the problem occur?” and “What, if any, custom workarounds have youtried?” and “How satisfied are you with your approach?”

In one embodiment, the bot may suggest multiple follow-up questions fromthe same set, to dig into the context of the problem and get a richstory. Therefore, the bot may be trained to ask the next question from adifferent grammar category than the ones it has suggested to ask orasked (e.g., a ‘how much’ question, if the bot 572 has already provideda ‘when’ and a ‘where’).

In a further embodiment, the bot 572 may be trained to stop providingfollow-up question on the same topic, once the bot 572 has alreadysuggested or asked 3-4 questions. The interviewer is thus helped to moveon to the next topic, when enough of a rich story has been collected.

After receiving information from LUIS (and the like) about what theprobability is in terms of what the interviewee is talking about (say acertain frequently performed task) the dialog management bot may alsoingest logic about how to hold the conversation in such a way that itfeels natural to both of the humans involved:

-   -   a. for the interviewer: in terms of the suggestions they are        getting to help improve their interview, and    -   b. for the interviewee: in terms of the follow-up questions        being suggested, for example

The dialog management bot thus finds out what the most reasonable andnatural thing is to say in response to the user. Some example responsesinclude:

-   -   a. a direct suggestion for a follow-up question when the        situation is clear,    -   b. a question to elicit more information to make a more informed        decision (in this situation, the dialog management bot asks for        ‘slot filling’ information—for example, if there is a task verb        without a direct object, it might ask the interviewer to ask the        customer what it is they are debugging),    -   c. stating that it does not understand what the user said,

And in addition, the bot 570 may include:

-   -   a. prioritizing potential response suggestions taking into        account which follow-up questions had already been asked,    -   b. and which questions would lead to the more vivid description,    -   c. asking a question to double-check that both the interviewer        and the bot understood what the interviewee said (e.g.,        ‘grounding’), etc.    -   d. The dialog management bot can even take the backlog list and        how much time is left over in the interview, to decide whether        to help the interviewer move on to a different topic (e.g., to        address more of the topic) or to stick with the same topic        (e.g., to ask certain questions that would provide them with a        vivid story to tell post-interview).

The model comprising bot 570 may be trained to understand when a verb ordirect object is missing from the composite, and to prioritize findingout more info to complete the JTBD.

Training may be done by asking a set of 3-5 questions (depending on howlong and detailed the responses take) from different ‘vivid grammar’categories to record a rich story. The bot 570 may also be trained onswitching topics once the 3-5 questions have been asked on that onetopic.

FIG. 6 is a screen shot of an example LUIS user interface showing anintent page 600 used for training model 562 as indicated by a selectedtrain user interface element 602. Intent page 600 shows an intent fordetecting closed questions. Intents are types of queries that meet adefined type, such as questions that may be answered with a yes or a no,as indicated at 605, which are closed ended questions. A data entry box610 may be used to enter examples of what a user might say. In oneembodiment, a phrase list is shown at 615 containing multiple utterancesand a corresponding label 620, selectable via drop down menu, consistentwith the intent. The entities and phrase lists are used to instruct LUIShow best to identify the intent of an utterance.

In one embodiment, a training set of phrases was developed from ananalysis of discussion guides, interview scripts product managers haveused, and online question repositories. Closed questions were identifiedas phrases starting with commonly used auxiliary verbs (such as, “do”,“can”, “would”). The identified questions were entered in page 600 asexamples of closed questions to teach the model that closed questionsusually start with an auxiliary verb and called them ‘ClosedPrefix’ inthe vivid grammar. The model so trained was able to detect syntacticpatterns and semantic patterns useful in detecting closed questions.

FIG. 7 is a screen shot of an example interface 700 illustratingsentences used to train the model for closed ended questions in what iscalled a token view. Areas of the interface 700 are designated by afirst added rectangle 710 that highlights some sample “utterances” onwhich the model was trained. Some examples include: “are you sure?”, “itis good?”, “were you successful?”, “is this how you do it?”, and “do youalways do it this way?” Utterances are a smaller set of particularlyrepresentative examples on which the model is trained (e.g., with biggersyntactic or grammatical differences). In one example, model 562 istrained on 16 utterances for this particular closed ended or yes/noquestion intent. Other sized training sets may be used in furtherembodiments, and with different services. And the tokens (highlightedwords such as “is”) show examples of the verbs that LUIS learned were‘ClosedPrefix’ types of auxiliary verbs.

The second added rectangle 715 highlights where several ‘test’ sentenceswere entered. The test sentences can be thought of as the test set toascertain the accuracy of the model in classifying utterances. Withevery utterance entered as a test, it can be determined whether eachtest utterance is being correctly classified by the model 562. Ifincorrectly classified, the model is continuously trained by providingthe correct answer for a particular sample utterance.

A similar analysis of questions reveals adjectives and adverbs as partsof the question grammar for leading questions. Screen shot 800 in FIG. 8illustrates sample utterances (with the grammar outlined—through thehighlighted entities) for a LeadingQuestions intent. Switching the viewover to ‘tokens’, at screen shot 900 in FIG. 9, example tokens replacingthe ClosedPrefix, Emotion, Grammar List, and Emotion entities areillustrated. 16 utterances, more or less, may be used to train theLeading Questions intent, or part of the model, and many more ‘Test’samples to test accuracy and correct the model along the way. Theutterances may include a diverse set of grammar, structures, and syntaxin some embodiments. Examples include: “did this make you feel angry?”,“how angry were you?”, and “were you happy?”.

Another feature used to leverage understanding of the grammar of goodquestions is phrase lists illustrated in screen 1000 of FIG. 10. Thephrase lists screen 1000 includes names of different types phrases listssuch as Emotions 1010, jobs to be done (JTBD) actions 1015,JTBD_Direct_Objects 1020, and a Problem_Indicator 1025. Each phrase listincludes a sample of various words or values indicative of the type ofphrase list. For instance, the emotions phrase list 1010 includes values“angry, sad, happy, unhappy, scared, annoyed, frustrated, content,depressed, bad, confused, enraged, anxious, disappointed, worried,upset, embarrassed, nervous, bored, shocked, excited, dissatisfied,tired, surprised, overwhelmed, pleased, irritated, thrilled, afraid,frightened, disgusted, stressed, amazed, impressed, relieved, amused,delighted, fascinated, stunned, satisfied, intrigued, horrified,offended, astonished, outraged, blown away, saddened, startled,astounded, surprised, dismayed, appalled, puzzled, terrified, overjoyed,bemused, mesmerized, heartened, elated, infuriated, like, good, crazy,insecure, etc.” The JTBD actions 1015 may include “edit, compile, debug,development, code, testing, monitoring, managing, manual testing. UItesting, release, publish, deploy, distribute, build, continuousintegration, continuous deployment, set up, design, modify, test,analyze, diagnose, plan, planning management, maintenance, develop,manage, research, implement, maintain, create, production, training,debugging, coding, working, deploying, distributing, compiling,designing, delivering, writing, collecting, researching, editing,reviewing, publishing, communicating, creating, programming,configuring, coordinating, pull request, organizing, evaluating,deleting, storing, reading, marketing, overwriting, etc.”JTBD_Direct_Objects 1020 may include “apps, applications, containers,websites, services, functions, desktop, code, laptop, tablet, backlog,Xamarin C++, C, C#, PHP, Java, JavaScript, TypeScript, MySQL, jQuery.Android, iPad, Laptops, HTML, Notebook, Python, Visual Studio, AppCenter, Visual Studio Code, features, capabilities, job, task, screen,feature, functionalities, infrastructures, methods, platforms, targets,systems, devices, environment, framework, model, tools, technology,data, architecture, policies, ecosystems, web service, etc.”Problem_Indicator 1025 may include values of “not easy, hard to find,not successful, not certain, not efficient, not good, not simple, notconsistent, not friendly, does not work, not natural, not fast, hard,harder, missed, unclear, hidden, failure, mistake, error, uncertain,misunderstood, inefficient, poor, bad design, inconsistent, unfriendly,doesn't work, cumbersome, odd, slow, long, unproductive, ineffective,not useful, out of control, not as expected, disempowering, notsatisfied, not fun, wouldn't recommend, not compelling, not innovative,least favorite, dissatisfied, horrible, painful, reject, oppose,unconvincing, unoriginal, stale, untrustworthy, distrust, not confident,not comfortable, confused, hate, awful, boring, unpleasant, annoying,busy, complex, confusing, dated, difficult, disconnected, disruptive,distracting, dull, fragile, frustrating, gets in the way, hard to use,impersonal, incomprehensible, intimidating, inviting, irrelevant, notsecure, not valuable, old, organized, overbearing, overwhelming,patronizing, poor quality, rigid, simplistic, sterile, stressful,time-consuming, too technical, unapproachable, unattractive,uncontrollable, unconventional, complicated, undesirable, unrefined,incompatible, stringent, tough, overwhelming, messy, don't understand,not great, undiscoverable, unsuccessful, unnatural, not quick, insecure,unreliable, unresponsive, dissatisfying, unhappy, inaccessible,unreachable, unattainable, uncomfortable, incomplete, inconvenient,antiquated, not easy to use, unexpected, unfamiliar, inflexible, nothelpful, uninspiring, fractured, unintuitive, demotivating,disorganized, unpredictable, unprofessional, unsophisticated, unstable,hard to understand, unusable, indecisive, closed, problem, fixing,trouble, trouble shooting, repairing, fix, difficulties, unpredictable,etc.” Note that the illustrated phrase lists are related to the productdevelopment domain or scenario, and that different domains may havedifferent phrase lists which will be readily ascertainable to someone ofskill in that domain.

In one embodiment, the phrase lists are selectable to provide an editphrase list screen. A create new phrase list button 1030 or other userinterface construct may also be used to navigate to an edit phrase listscreen 1100 in FIG. 11. The emotion phrase list screen is displayed inFIG. 11 and includes a name field 1105, a value 1110, a phrase listvalues portion 1115, and a related values portion 1120. The name field1105 is show with the emotions phrase list label. Phase list values maybe added in the value field 1110 and may be separated by commas in oneembodiment. Clicking on or otherwise selecting add all 1125 or hittingan enter key moves the entered values to the phase list values portion1115. Selecting any value in the portions 1115 or 1120 will move theselected value to the other portion. The related values may be providedbased on a thesaurus type lookup of values related to the values in thephrase list portion 1115. A save button 1130 may be used to save changesmade.

Phrase lists allow seeding LUIS with a list of terms frequently observedin leading questions—in this case, emotions. When LUIS detects a termspecifically used in a Phrase list, that term gets increased weight andimportance. So, in this case, if a particular emotion from the phraselist is detected in a sentence, the model more strongly connects thatsentence to the leading question type.

JTBD_Actions and JTBD_Direct_Objects are strong indicators that theconversation is about a “job-to-be-done” or a type of task that acustomer would perform: the ‘direct object’ is the object that's beingacted upon through the customer's job-to-be-done, and the ‘action’ isthe actual job that they're performing (e.g., debugging code:‘debugging’ is the action. ‘code’ is the direct object).

Finally, the Problem_Indicator Phrase list is a set of terms that havebeen observed being used in a conversation relating to a customerdescribing a pain point they have.

In one embodiment. LUIS may be trained to detect the intersection of theentities in a domain grammar and the vivid-grammar. Every ‘cell’ of atable covering “HPF steps x vivid-grammar question type” may be covered.In other words, each of the customer, problem, concept, feature, andbusiness steps or stages of the HPF will have associated question typesand the model 562 will be trained to classify utterances for each step.

FIG. 12 illustrates at 1200 a list of Intents on which model 562 hasbeen trained to detect, including Problem and Jobs-To-Be-Done. Theproblems include how, how much, where, who/what, and why. JTBD includeshow, how much, when, where, who/what, why. Also included is acommunication confirm intent, a leading question intent, and yes notquestions intent. The number of labeled utterances used for trainingeach intent is also illustrated. The numbers are just examples, and infurther embodiments, and especially in further domains, differentintents and different numbers of training utterances may be used.

In order to detect critical clauses in questions that enable detectionof whether something is a who/what, how much, when, where, how, or whyquestion, a vivid grammar list, Grammar List entity may be defined. FIG.13 is a list 1300 of normalized values 1305 and synonyms 1310 making upa vivid grammar list. Normalized values 1305 may include the followingvalues: How, how much, what, when, where, who, and why. As can be seenin the synonyms 1310 list, the how value may be equivalent to phrases,such as how do you, what happens after, etc. Similar synonym phrases areincluded for each of the normalized values. Detection of a synonym in anutterance may be normalized for use in the model 562 to help determinethe type of vivid question being asked.

FIG. 14 illustrates at 1400 the types of entities defined in a vividconversations model 562 in one embodiment related to the productdevelopment domain. A create entity button 1405 may be used to add anentity to the list, and selecting the name 1410 of the entity may beused to edit an existing entity. Example entities in one embodimentinclude ClosedPrefix, Emotion, Grammar_List, JTBD_Action,JTBD_Composite, JTBD_Object, Problem_Indicator, and closed questionstarter. Types of entities are also shown at 1415 and include simple,list, and composite. The number of labeled utterances 1420 associatedwith each entity is also illustrated.

FIG. 15 is a screen shot 1500 illustrating a JTBD_Action entity definedin FIG. 14. The view is an entity view, and shows the utterances 1505parsed by entity. For instance, the first utterance 1510 has replacedvalues with corresponding entities Grammar_List 1515, JTBD_Action 1520,and JTBD_Direct_Object 1525. Each of the succeeding utterances has beensimilarly parsed. A labeled intent 1430 is also included and may beselected via a drop down menu in one embodiment.

FIG. 16 is a screen shot 1600 illustrating the same JTBD_Action entityagain, but this time with example tokens filled in for the entities. Thetokens in each utterance 1605 are highlighted.

Under labeled intent 1610, the vivid question LUIS is detecting for acorresponding utterance is shown. LUIS will classify each utterance tobe the type of question that's listed first in the list (highestprobability match). In the case of, “Who is involved in debugging yourmobile app?” 1605, for example, our LUIS model is 86% sure that the typeof this question is a ‘who/what’ question about a ‘job-to-be-done’. Thelabeled intent for utterance 1605 is expanded to include probabilitiesor confidence corresponding to how LUIS is using the combination ofnouns, verbs, adjectives, and adverbs in the grammar to classifyquestions by the combination of HPF topic they relate to and whatvivid-grammar dimension they are probing into. For each question orutterance, the degree of confidence that LUIS has that it has properlyclassified the question is shown.

Looking at some of the other examples moving from the Entity view inFIG. 15 to the Tokens view in FIG. 16: one can see examples of the“Grammar_List” tokens LUIS is detecting to classify the type ofvivid-question, and the “JTBD_Action” and “JTBD_Direct_Object” it isdetecting to classify as tasks/jobs, and the “Problem_Indicator” it ispicking up on as adjectives and adverbs that indicate a problem is thetopic of interest.

FIG. 17 is a block diagram of a system 1700 for generating querysuggestions illustrating additional components compared to FIG. 5, withlike elements having the same reference numbers. In one embodiment, thegrammar abstraction layer 555 provides a dialog response to an interviewbot 1710 via connection 1715. The dialog response may be an actualquestion or other communication to be communicated via a connection 1720to information source client 520 in the form of text or voice.

The response from information source client 520 is provided viaconnection 1725 to the interview bot 1710 and on to the grammarabstraction layer 555 via a connection 1730. The response is alsoprovided via connection 556 to text analysis services 565 for furtherprocessing and the provision of an analysis, including output from model562 via connection 565.

In one embodiment, audio of one or more of the user and participant maybe provided via connection 1735 to an audio analysis service 1740 foranalysis by a voice inflection service 1742. Results of the voiceinflection may be provided as data representative of voice inflectionback to grammar abstraction layer 555 via connection 1743 for use ingenerating communications. Similarly, video of one or more of the userand participant may be provided on a connection 1745 to a video analysisservice 1747, which may include one or more video analysis services,such as body language analysis 1750 and pupil dilation analysis 1752.Data representative of the video analysis may be provided to the grammarabstraction layer 555 via a connection 1755 for use in generatingcommunications.

In a further embodiment, a data analysis service 1760 receives acommunication suggestion, along with the analysis from services 560 fromthe grammar abstraction layer 555 via a connection 1765. The dataanalysis service 1760 may include performance report services 1767 anddiscussion guide analysis service 1768 to provide information onconnection 1770 regarding the query sessions to help determine trendsand provide a statistical analysis of problems and other informationassociated with the specific domain. The information provided viaconnection 1770 to grammar abstraction layer 555 may be used to improvethe communication suggestions in order to improve the effectiveness ofquery sessions.

FIG. 18 is a block schematic diagram of a computer system 1800 toimplement and manage one or more of the components used to conductqueries, conversation, analyze grammar, provide suggestions for betterqueries, and perform other methods and algorithms corresponding to theexample embodiments. All components need not be used in variousembodiments.

One example computing device in the form of a computer 1800 may includea processing unit 1802, memory 1803, removable storage 1810, andnon-removable storage 1812. Although the example computing device isillustrated and described as computer 1800, the computing device may bein different forms in different embodiments. For example, the computingdevice may instead be a smartphone, a tablet, smartwatch, smart storagedevice (SSD), or other computing device including the same or similarelements as illustrated and described with regard to FIG. 18. Devices,such as smartphones, tablets, and smartwatches, are generallycollectively referred to as mobile devices or user equipment.

Although the various data storage elements are illustrated as part ofthe computer 1800, the storage may also or alternatively includecloud-based storage accessible via a network, such as the Internet orserver based storage. Note also that an SSD may include a processor onwhich the parser may be run, allowing transfer of parsed, filtered datathrough I/O channels between the SSD and main memory.

Memory 1803 may include volatile memory 1814 and non-volatile memory1808. Computer 1800 may include—or have access to a computingenvironment that includes—a variety of computer-readable media, such asvolatile memory 1814 and non-volatile memory 1808, removable storage1810 and non-removable storage 1812. Computer storage includes randomaccess memory (RAM), read only memory (ROM), erasable programmableread-only memory (EPROM) or electrically erasable programmable read-onlymemory (EEPROM), flash memory or other memory technologies, compact discread-only memory (CD ROM), Digital Versatile Disks (DVD) or otheroptical disk storage, magnetic cassettes, magnetic tape, magnetic diskstorage or other magnetic storage devices, or any other medium capableof storing computer-readable instructions.

Computer 1800 may include or have access to a computing environment thatincludes input interface 1806, output interface 1804, and acommunication interface 1816. Output interface 1804 may include adisplay device, such as a touchscreen, that also may serve as an inputdevice. The input interface 1806 may include one or more of atouchscreen, touchpad, mouse, keyboard, camera, one or moredevice-specific buttons, one or more sensors integrated within orcoupled via wired or wireless data connections to the computer 1800, andother input devices. The computer may operate in a networked environmentusing a communication connection to connect to one or more remotecomputers, such as database servers. The remote computer may include apersonal computer (PC), server, router, network PC, a peer device orother common data flow network switch, or the like. The communicationconnection may include a Local Area Network (LAN), a Wide Area Network(WAN), cellular, Wi-Fi, Bluetooth, or other networks. According to oneembodiment, the various components of computer 1800 are connected with asystem bus 1820.

Computer-readable instructions stored on a computer-readable medium areexecutable by the processing unit 1802 of the computer 1800, such as aprogram 1818. The program 1818 in some embodiments comprises software toimplement one or more . . . . A hard drive, CD-ROM, and RAM are someexamples of articles including a non-transitory computer-readable mediumsuch as a storage device. The terms computer-readable medium and storagedevice do not include carrier waves to the extent carrier waves aredeemed too transitory. Storage can also include networked storage, suchas a storage area network (SAN). Computer program 1818 along with theworkspace manager 1822 may be used to cause processing unit 1802 toperform one or more methods or algorithms described herein.

Several examples are now described. Each of the examples may include oneor more aspects of the other examples.

Conversation Mix Examples:

1. A computer implemented method comprising:

providing a series of queries to a user via a client query device;

sending queries from the series of queries via the client query deviceto an information source client;

receiving information from an information source via the informationsource client;

-   -   determining a proportion of queries to information; and        generating a query communication as a function of the proportion        of queries to information.

2. The computer implemented method of example 1 and further comprisingsending a new query from the client query device to the informationsource client responsive to the query communication.

3. The computer implemented method of example 1 and further comprisingtranscribing the queries and information into query text and informationtext; and wherein the proportion of queries to information is based on acount of the query text and information text.

4. The computer implemented method of example 3 wherein the count isbased on the number of letters in the query text and information text.

5. The computer implemented method of example 3 wherein the count isbased on the number of words in the query text and information text.

6. The computer implemented method of example 1 wherein the proportionof queries to information is based on a first aggregation of time for auser to read the queries and a second aggregation of time for theinformation source comprising an interviewed user of the informationsource client to provide the information.

7. The computer implemented method of example 1 and further comprisinggenerating a new query responsive to the proportion of queries toinformation exceeding a threshold.

8. The computer implemented method of example 7 wherein the threshold isselected as a function of a type of the series of queries.

9. The computer implemented method of example 8 wherein the threshold ishigher for a first type of series of queries directed toward elicitingfact-based information and lower for a second type of series of queriesdirected toward eliciting opinion-based information.

10. The computer implemented method of example 9 wherein the new queryis selected from a group of queries of varying open and closed endedtype of queries such that when the proportion is greater than thethreshold results in selection of an open ended new query.

11. A communication monitor comprising:

an input device to receive audio query information and audio queryresponse information;

a processor; and

a memory device coupled to the processor and input device, and having a

program stored thereon for execution by the processor to performoperations comprising:

-   -   determining a proportion of query information to response        information; and    -   generating a new query as a function of the proportion of query        information to response information.

12. The communication monitor of example 11 wherein the input devicecomprises a microphone, display, and speaker.

13. The communication monitor of example 11 wherein the operationsfurther comprise sending the new query to an information source clientdevice.

14. The communication monitor of example 11 wherein the proportion ofqueries to information is based on a count of the query text andinformation text.

15. The communication monitor of example 14 wherein the count is basedon the number of letters in the query text and information text or onthe number of words in the query text and information text, or on afirst aggregation of time for a user to read the queries and a secondaggregation of time for the information source comprising an intervieweduser of the information source client to provide the information.

16. The communication monitor of example 11 wherein the new query isgenerated responsive to the proportion of queries to informationexceeding a threshold that is selected as a function of a type of theseries of queries.

17. The communication monitor of example 16 wherein the threshold ishigher for a first type of series of queries directed toward elicitingfact-based information and lower for a second type of series of queriesdirected toward eliciting opinion-based information.

18. A machine-readable storage device having instructions for executionby a processor of a machine to cause the processor to perform operationsto perform a method of managing communication accounts, the operationscomprising:

providing a series of queries to a user via a client query device;

sending queries from the series of queries via the client query deviceto an information source client;

receiving information from an information source via the informationsource client;

transcribing the queries and information into query text and informationtext;

determining a proportion of queries to information from the transcribedqueries; and

generating a new query as a function of the proportion of queries toinformation.

19. The machine-readable storage device of example 18, wherein theoperations further comprise sending the new query from the client querydevice to the information source client and wherein the proportion ofqueries to information is based on the number of letters in the querytext and information text, based on the number of words in the querytext and information text, or based on a first aggregation of time for auser to read the queries and a second aggregation of time for theinformation source comprising an interviewed user of the informationsource client to provide the information.

20. The computer implemented method of example 1 wherein the new queryis generated responsive to the proportion of queries to informationexceeding a threshold that is selected as a function of a type of theseries of queries, wherein the threshold is higher for a first type ofseries of queries directed toward eliciting fact-based information andlower for a second type of series of queries directed toward elicitingopinion based information.

Training of an Empathy Model Examples:

1. A computer method of training an empathy model for detecting a typeof query, the method comprising:

defining an intent for detecting closed ended queries;

providing a plurality of queries that are closed ended queries to amachine learning model generator, said plurality of queries comprisingtraining data,

providing a plurality of corresponding labels identifying the pluralityof queries as closed ended queries; and

generating a model that classifies closed ended queries as a function ofthe training data.

2. The method of example 1 wherein the machine learning model generatorcomprises a language understanding machine learning service.

3. The method of example 1 wherein the machine learning model generatorprovides a confidence level with a classification of each query.

4. The method of example 3 wherein queries beginning with auxiliaryverbs including “do”, “can”, and “would” result in higher confidencelevels.

5. The method of example 1 and further comprising:

providing test queries to the generated model;

receiving a classification from the generated model; and

correcting incorrect classifications to further train the model.

6. The method of example 1 and further comprising training the modelwith a domain specific grammar tailored to a specific domain.

7. The method of example 6 wherein the domain comprises productdevelopment and includes development stages of customer, problem,concept, and feature.

8. The method of example 1 and further comprising:

defining an intent for detecting leading queries;

providing a plurality of queries that are leading queries to the machinelearning model generator; and

modifying the model to classify leading queries.

9. The method of example 8 wherein the machine learning model generatorprovides a confidence level with a classification of each query whereinqueries beginning with adjectives and adverbs result in higherconfidence levels that the query is leading.

10. The method of example 8 and further comprising providing a phraselist to seed the machine learning model generator with emotion intentrelated terms associated with leading queries, resulting in increasingthe confidence levels for queries having such emotion related terms.

11. The method of example 10 wherein the phrase list terms from one ormore intents of jobs to be done, closed queries, and problem indicatorterms.

12. A machine-readable storage device having instructions for executionby a processor of a machine to cause the processor to perform operationsto perform a method of training an empathy model for detecting a type ofquery, the operations comprising:

defining an intent for detecting closed ended queries;

providing a plurality of queries that are closed ended queries to amachine learning model generator, said plurality of queries comprisingtraining data,

providing a plurality of corresponding labels identifying the pluralityof queries as closed ended queries; and

generating a model that classifies closed ended queries as a function ofthe training data.

13. The machine-readable storage device of example 12 wherein themachine learning model generator comprises a language understandingmachine learning service that provides a confidence level with aclassification of each query.

14. The machine-readable storage device of example 13 wherein queriesbeginning with auxiliary verbs including “do”, “can”, and “would” resultin higher confidence levels.

15. The machine-readable storage device of example 1 wherein theoperations further comprise:

providing test queries to the generated model;

receiving a classification from the generated model; and

correcting incorrect classifications to further train the model.

16. The method of example 1 and further comprising training the modelwith a domain specific grammar tailored to a specific domain, whereinthe domain comprises product development and includes development stagesof customer, problem, concept, and feature.

17. The machine-readable storage device of example 12 wherein theoperations further comprise:

defining an intent for detecting leading queries;

providing a plurality of queries that are leading queries to the machinelearning model generator; and

modifying the model to classify leading queries.

18. The machine-readable storage device of example 17 wherein themachine learning model generator provides a confidence level with aclassification of each query wherein queries beginning with adjectivesand adverbs result in higher confidence levels that the query isleading, and wherein the operations further comprise providing a phraselist to seed the machine learning model generator with emotion intentrelated terms associated with leading queries, resulting in increasingthe confidence levels for queries having such emotion related terms.

19. A device comprising:

a processor; and

a memory device coupled to the processor and having a program storedthereon for execution by the processor to perform operations comprising:

defining an intent for detecting closed ended queries;

providing a plurality of queries that are closed ended queries to amachine learning model generator, said plurality of queries comprisingtraining data;

providing a plurality of corresponding labels identifying the pluralityof queries as closed ended queries; and

generating a model that classifies closed ended queries as a function ofthe training data.

20. The device of example 19 wherein the machine learning modelgenerator comprises a language understanding machine learning servicethat provides a confidence level with a classification of each query,the operations further comprising training the model with a domainspecific grammar tailored to a specific domain.

Use of Model to Generate Conversation Suggestions in Real-Time Examples.

1. A computer implemented method of generating query suggestions, themethod comprising:

receiving queries as the queries are posed;

receiving indicia representative of a received query being closed ended;and

generating a new query that is more open-ended than the query associatedwith the received indicia.

2. The method of example 1 wherein the new query is selected from a setof queries in a table.

3. The method of example 2 wherein the new query is generated to elicitmore information than information received responsive to the queryassociated with the received indicia.

4. The method of example 3 wherein the new query is generated as afunction of received responses to the query associated with the receivedindicia, wherein the new query is provided to a user as a next query inthe received queries.

5. The method of example 1 wherein the indicia is received from alanguage understanding machine learning model trained with a pluralityof queries that are labeled closed ended queries, and wherein theindicia includes a confidence level value.

6. The method of example 1 wherein generating a new query is performedby a machine learning trained model trained by . . .

7. A computer implemented method of generating query suggestions, themethod comprising:

receiving queries as the queries are posed;

receiving indicia representative of an intent of a received query; and

generating a new communication in response to the indicia representativeof the intent of the received query.

8. The method of example 6 wherein the new communication is selectedfrom a set of communications in a table.

9. The method of example 8 wherein the new communication is generated toelicit more information than information received responsive to thequery associated with the received indicia.

10. The method of example 9 wherein the new communication is generatedas a function of received responses to the query associated with thereceived indicia, wherein the new communication is provided to a user asa next query in the received queries.

12. The method of example 7 wherein the indicia is received from alanguage understanding machine learning model trained with a vividgrammar and a domain specific grammar.

13. The method of example 11 wherein the indicia includes a confidencelevel value.

14. The method of example 7 wherein the indicia includes datarepresentative of at least one of a communication confirmation, a job tobe done, a leading question, a problem, and a yes/no question.

15. The method of example 13 wherein the data corresponding to a job tobe done or a problem includes at least one indication of how, how much,where, who/what, and why.

Burndown List to Ensure Complete Data Collection Examples

1. A computer implemented method of enhancing query sessions, the methodcomprising:

obtaining a list of topics to be covered in a query session;

receiving a series of queries during the query session:

receiving query coverage data indicative of at least one topic in thequery session; and

generating a communication directed toward coverage of at least oneincompletely covered topic in response to the query coverage data.

2. The method of example 1 and further comprising:

keeping track of a time remaining in the query session; and

wherein the communication is generated as a function of the timeremaining in the query session.

3. The method of example 1 wherein the query coverage data is indicativeof a number of topics covered in the list of topics.

4. The method of example 3 wherein the communication identifies topicsnot yet covered in the list of topics.

5. The method of example 4 wherein the communication identifying topicsnot yet covered comprises a list of topics with indications of coverageassociated with each topic in the list.

6. The method of example 1 wherein the indications of coverage comprisequery suggestions received during the query session that were not asked,wherein the query suggestions are correlated with the list of topics.

7. The method of example 1 wherein the query coverage data is receivedfrom a trained query and information measurement model that is trainedwith vivid grammar labeled utterances to match language syntax betweenthe list of topics and the received queries.

8. The method of example 7 wherein the model is further trained on adomain specific grammar labeled utterances.

Use of a Model to Modify Conversation Scripts Prior to Conversation

1. A computer implemented method comprising:

retrieving a script containing a series of queries at a computingdevice;

receiving indicia representative of the received queries being closedended;

generating new queries that are more open-ended in response to thereceived indicia; and

replacing the closed ended questions in the script with the generatednew queries.

2. The computer implemented method of example 1 and further comprising:

replacing at least one query in the series of queries with a generatednew query.

3. The method of example 1 wherein the new query is selected from a setof queries in a table.

4. The method of example 3 wherein the new query is generated to elicitmore information than information received responsive to the queryassociated with the received indicia.

5. The method of example 4 wherein the new query is generated as afunction of received responses to the query associated with the receivedindicia, wherein the new query is provided to a user as a next query inthe received queries.

6. The method of example 1 wherein the indicia is received from alanguage understanding machine learning model trained with a pluralityof queries that are labeled closed ended queries, and wherein theindicia includes a confidence level value.

7. A computer implemented method comprising:

retrieving a script containing a series of queries at a computingdevice;

receiving indicia representative of an intent of one of the queries inthe script;

generating a new communication in response to the received indiciarepresentative of the intent of the query; and

replacing the query in the script with the generated new communication.

8. The method of example 7 wherein the new communication is selectedfrom a set of communications in a table.

9. The method of example 8 wherein the new communication is generated toelicit more information than information received responsive to thequery associated with the received indicia.

10. The method of example 9 wherein the new communication is generatedas a function of received responses to the query associated with thereceived indicia, wherein the new communication is provided to a user asa next query in the received queries.

11. The method of example 7 wherein the indicia is received from alanguage understanding machine learning model trained with a vividgrammar and a domain specific grammar.

12. The method of example 12 wherein the indicia includes a confidencelevel value.

13. The method of example 7 wherein the indicia includes datarepresentative of at least one of a communication confirmation, a job tobe done, a leading question, a problem, and a yes/no question.

14. The method of example 13 wherein the data corresponding to a job tobe done or a problem includes at least one indication of how, how much,where, who/what, and why.

Establishing Common Ground Via Use of Auxiliary Data (e.g., LinkedIn)Examples.

In various examples, data is obtained from one or more social mediaplatform(s) that includes details corresponding to the person (such asFacebook, LinkedIn, organization structure, Stakeholder relationships,Twitter, etc.).

The model is trained to use the data from the social network graph-typeservice to generate rapport, by giving examples of the types ofinformation that are good topics, without being too intrusive. Forexample, by taking the data on the interviewee and comparing it to thedata on the interviewer to look for commonalities (e.g., you both wentto the same school, know a person in common, worked for the samecompany, develop in Java, grew up in the same hometown). If nocommonalities exist, then the model picks a most relevant topic (e.g.,products or programming languages used).

1. A method of generating query suggestions for a user, the methodcomprising:

receiving information regarding a person to be queried by the user, theinformation being received from a service that queries multiple socialmedia services regarding the person;

comparing the received information to information corresponding to theuser;

identifying one or more details in common based on the comparison of theinformation; and

generating a query suggestion that incorporates at least one identifieddetail in common based on the comparison of information.

2. The method of example 1 wherein the service that provides thereceived information regarding the person comprises a social networkgraph service.

3. The method of example 1 wherein the one or more details in commoninclude knowing a same person, attending a same school, growing up in asame location, worked for a same company, and used a same programminglanguage.

4. The method of example 3 wherein the details in common areprioritized, with the lowest priority associated with using a sameprogramming language.

5. The method of example 1 wherein the query suggestion is selected froma table of query suggestions.

6. The method of example 1 the query suggestion is generated by amachine learning model trained with labeled examples of queriesassociated with details in common, selected from the group consisting ofknowing a same person, attending a same school, growing up in a samelocation, worked for a same company, and used a same programminglanguage.

Clarifying Privacy Examples

In one embodiment, a rule set can be defined that detects questions thatviolate organizational or regulatory policy, and corrected advice can bedelivered to the interviewer. The model 562 may be trained with a domaingrammar that corresponds to violations of such rules. Medical relatedquestions in a non-medical setting or a conversation shared with morethan one party may violate such policies as well as the health insuranceportability and accountability act of 1996 and other privacy relatedregulations, rules, laws, and policies.

1. A method of generating communication suggestions, the methodcomprising:

receiving queries as the queries are posed to a person;

receiving indicia representative of the at least one of the receivedqueries being likely to elicit private information in violation of aprivacy policy;

generating a communication suggestion that is less likely to elicitprivate information from a person than a most recent posed query inresponse to the received indicia.

2. The method of example 1 wherein the new communication is selectedfrom a set of communications in a table.

3. The method of example 1 wherein the indicia is received from alanguage understanding machine learning model trained with a vividgrammar and a domain specific grammar.

4. The method of example 5 wherein the indicia includes a confidencelevel value.

5. The method of example 4 wherein the domain specific grammar compriseslanguage syntax likely used for queries that ask for private informationin violation of the privacy policy.

6. The method of example 5 wherein the privacy policy includesorganizational and regulatory privacy policies.

Detecting and Reporting on Various Forms of Bias Examples.

1. A method of generating query suggestions, the method comprising:

receiving queries as the queries are posed;

receiving indicia representative of the received queries including aform of bias;

generating a new query that does not include the form of bias than amost recent posed query in response to the received indicia.

2. A method of generating communication suggestions, the methodcomprising:

receiving queries as the queries are posed by a user to a person;

receiving indicia representative of the at least one of the receivedqueries being influenced by user bias;

generating a communication suggestion that is less likely to exhibituser bias, the communication suggestion being generated as a function ofthe at least one of the received queries and the indica.

3. The method of example 2 wherein the new communication is selectedfrom a set of communications in a table.

4. The method of example 2 wherein the indicia is received from alanguage understanding machine learning model trained with a vividgrammar and a domain specific grammar.

5. The method of example 4 wherein the indicia includes a confidencelevel value.

6. The method of example 5 wherein the domain specific grammar compriseslanguage syntax commonly used for queries that exhibit bias.

7. The method of example 6 wherein the bias comprises one or more ofcurse of knowledge, empathy gap, focusing effect, wishful thinking,expectation bias, and confirmation bias.

8. The method of example 2 wherein the communication suggestion isgenerated to focus the query session on recalled events rather thanbiased generalizations.

Enhancing Emotion Detection Through Other Signals (e.g., VoiceInflection Analysis, Eye Movement Analysis, Body Language Analysis,Micro-Expressions, Bio-Feedback/Blood Pressure/Heart Rate, Bio-Feedback,Etc.) Examples.

In various embodiments, a method generates query suggestions byreceiving queries at computing resources as the queries are posed to aperson by a user, receiving information at the computing resources fromthe person (such as using voice (e.g., for voice inflection), video(e.g., for micro-expressions and body language), or from sensors (e.g.EKG readings)), using commercially-available services (such as the FaceAPI Azure Cognitive Service's Emotion recognition) to derive, via thecomputing resources, a representation of an emotion of the person fromthe received information. Services, such as Sentiment analysis, may beused on the transcription to detect the positive, negative, or neutralsentiment of the utterances. The conversation bot is then trained tonotice inconsistencies between the emotions coming from two or more ofthese sources for consistency and, depending on the inconsistency, tofollow up with additional queries, to better understand the apparentdissonance and underlying user emotions, opinions, and behaviors.Computing resources are used to generate a new query as a function ofthe representation(s) of emotion of the person (be it consistent ordissonant.) The new query may then be posed to the person.

1. A method of generating query suggestions, the method comprising:

receiving queries at computing resources as the queries are posed to aperson by a user;

receiving information at the computing resources from the person;

obtaining via the computing resources, a representation of an emotion ofthe person from the received information;

-   -   generating, via the computing resources, a new query as a        function of the representation(s) of emotion of the person; and    -   posing the new query to the person.

2. The method of example 1 wherein the received information comprisesdata representative of a pupil dilation analysis.

3. The method of example 1 wherein the received information comprisesdata representative of a video analysis.

4. The method of example 3 wherein the video analysis is based on atleast one of micro expressions and body language.

5. The method of example 1 wherein the received information comprisesdata representative of an analysis of voice inflection.

6. The method of example 1 wherein receiving information from the personcomprises receiving at least one of video and audio of the person, andwherein deriving, via the computing resources, a representation of anemotion of the person from the received information comprises sendingone or more of the received video and audio to one or more of a videoanalysis service and an audio analysis service.

7. The method of example 1 and further comprising:

detecting sentiment from transcribed utterances of the person;

determining inconsistencies between the sentiment and the emotion of theperson; and

wherein generating the new query is a function of the inconsistencies.

8. The method of example 7 wherein the new query is generated to obtaininformation from the person representative of the inconsistencies.

Creating an Interview Bot Examples.

1. A method comprising:

receiving a series of queries by a communication generator for executingon computing resources;

connecting to a person to be queried via a communication connection;

receiving indicia representative of the received series of queries beingopen ended or closed ended:

generating at least one new query that is more open-ended than a mostrecent posed query in response to the received indicia; and

communicating the at least one new query to the person via thecommunication connection.

Although a few embodiments have been described in detail above, othermodifications are possible. For example, the logic flows depicted in thefigures do not require the particular order shown, or sequential order,to achieve desirable results. Other steps may be provided, or steps maybe eliminated, from the described flows, and other components may beadded to, or removed from, the described systems. Other embodiments maybe within the scope of the following claims.

The invention claimed is:
 1. A computer implemented method comprising:providing a series of queries to a first user via a client query device;sending, by the first user, queries from the series of queries via theclient query device to a second user of an information source client tostart a conversation; receiving information from the second user via theinformation source client responsive to the sent queries; transcribingthe sent queries and the received information into query text andinformation text; determining a proportion of queries to informationfrom the transcribed query text and information text, wherein theproportion indicates an amount of communications by the first user withrespect to an amount of communications by the second user in theconversation; generating a query communication responsive to thedetermined proportion exceeding a threshold, wherein the querycommunication being based on a group of open-ended and closed-endedqueries such that the determined proportion exceeding the thresholdresults in selection of an open-ended new query; and presenting thequery communication to the first user of the client query device.
 2. Thecomputer implemented method of claim 1, further comprising sending thenew query from the client query device to the information source client.3. The computer implemented method of claim 1, wherein the proportion isbased on a count of the query text and the information text.
 4. Thecomputer implemented method of claim 3, wherein the count is based on anumber of letters in the query text and the information text.
 5. Thecomputer implemented method of claim 3, wherein the count is based on anumber of words in the query text and the information text.
 6. Thecomputer implemented method of claim 1, wherein the proportion is basedon a first aggregation of time for the first user to read the queriesand a second aggregation of time for the second user to provide theinformation.
 7. The computer implemented method of claim 1, wherein thethreshold is selected as a function of a type of the series of queries.8. The computer implemented method of claim 7, wherein the threshold ishigher for a first type of t series of queries directed toward elicitingfact-based information and lower for a second type of the series ofqueries directed toward eliciting opinion-based information.
 9. Acommunication monitor comprising: an input device; a processor; and amemory device coupled to the processor and input device, and having aprogram stored thereon for execution by the processor to performoperations comprising: providing a series of queries to a first user viaa client query device; sending, by the first user, queries from theseries of queries via the client query device to a second user of aninformation source client to start a conversation; receiving informationfrom the second user via the information source client responsive to thesent queries; transcribing the sent queries and the received informationinto query text and information text; determining a proportion ofqueries to information from the transcribed query text and informationtext, wherein the proportion indicates an amount of communications bythe first user with respect to an amount of communications by the seconduser in the conversation; generating a new query responsive to theproportion of exceeding a threshold, wherein the new query being basedon a group of open-ended and closed-ended queries such that thedetermined proportion exceeding the threshold results in selection of anopen-ended new query; and sending the new query to the second user ofthe information source client.
 10. The communication monitor of claim 9,wherein the input device comprises a microphone, display, and speaker.11. The communication monitor of claim 9, wherein the proportion isbased on a count of the query text and the information text.
 12. Thecommunication monitor of claim 11, wherein the count is based on anumber of letters in the query text and the information text or on thenumber of words in the query text and the information text, or on afirst aggregation of time for the first user to read the queries and asecond aggregation of time for the second user to provide theinformation.
 13. The communication monitor of claim 9, wherein thethreshold is higher for a first type of the series of queries directedtoward eliciting fact-based information and lower for a second type ofthe series of queries directed toward eliciting opinion-basedinformation.
 14. A machine-readable storage device having instructionsfor execution by a processor of a machine to cause the processor toperform operations to perform a method of managing communicationaccounts, the operations comprising: providing a series of queries to afirst user via a client query device; sending, by the first user,queries from the series of queries via the client query device to asecond user of an information source client to start a conversation;receiving information from the second user via the information sourceclient responsive to the sent queries; transcribing the sent queries andthe received information into query text and information text;determining a proportion of queries to information from the transcribedqueries and information, wherein the proportion indicates an amount ofcommunications by the first user with respect to an amount ofcommunications by the second user in the conversation; generating a newquery responsive to the proportion exceeding a threshold, wherein thenew query being based on a group of open-ended and closed-ended queriessuch that the proportion exceeding the threshold results in selection ofan open-ended new query; and sending the new query to the second user ofthe information source client.
 15. The machine-readable storage deviceof claim 14, wherein the proportion is based on a number of letters inthe query text and information text, based on a number of words in thequery text and the information text, or based on a first aggregation oftime for the first user to read the queries and a second aggregation oftime for the second user to provide the information.
 16. Themachine-readable storage device of claim 14, wherein the closed-endedqueries are directed toward eliciting fact-based information and theopen-ended queries are directed toward eliciting opinion basedinformation.